home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / news / inn1.000 / inn1.4sec-linux-src.tar / inn / config / Makefile < prev    next >
Makefile  |  1993-03-18  |  3KB  |  114 lines

  1. ##  $Revision: 1.26 $
  2. SHELL    = /bin/sh
  3. MAKE    = make
  4. IFTRUE    = @$(SHELL) ../iftrue.sh
  5.  
  6. CONF    = config.data
  7. FILE    = files.list
  8. LIST    = `grep -v '^;' <$(FILE)`
  9. BACKUP    = backup.tar
  10.  
  11. ##  Pick your method of source control:  RCS, SCCS, or NONE
  12. SRCCTL        = NONE
  13. CHECKOUT    = $(SRCCTL)-checkout
  14. CHECKIN        = $(SRCCTL)-checkin
  15.  
  16. ##  If you use the script version of subst, and your version of sed chokes
  17. ##  then get FSF sed and edit the next line as appropriate.
  18. #SED    = -e /usr/gnu/bin/sed
  19.  
  20.  
  21. all:            substitutions
  22.  
  23. # Yes, we really want to do nothing here!
  24. install:
  25.  
  26. clobber clean:
  27.     rm -f subst.tmp config.new subst substitutions
  28.     rm -f all install lint profiled
  29.  
  30. quiet:
  31.     @$(MAKE) 'FILE=$(FILE)' substitutions | grep -v unchanged
  32.  
  33. tags ctags:
  34.     cp /dev/null tags
  35.  
  36. lint profiled:
  37.     cp /dev/null $@
  38.  
  39. substitutions:        $(CHECKOUT) subst files.list $(CONF)
  40.     -@rm -f ../*/substtmp.new ../*/substtmp.old
  41.     @$(SHELL) ./checkconf.sh $(CONF)
  42.     ./subst $(SED) -f $(CONF) $(LIST)
  43.     $(IFTRUE) '$(SRCCTL) != NONE' '$(MAKE) $(CHECKIN)'
  44.  
  45. RCS-checkout:
  46.     co -l $(LIST)
  47. RCS-checkin:
  48.     ci $(LIST)
  49. SCCS-checkout:
  50.     sccs get -e $(LIST)
  51. SCCS-checkin:
  52.     sccs delta $(LIST)
  53. NONE-checkout:
  54.     -chmod u+w,g+w $(LIST)
  55. NONE-checkin:
  56.  
  57. backup:
  58.     $(IFTRUE) '-f $(BACKUP)' 'echo $(BACKUP) exists! ; exit 1'
  59.     tar cf $(BACKUP) $(LIST)
  60.  
  61. restore:
  62.     $(IFTRUE) '! -f $(BACKUP)' 'echo No $(BACKUP)! ; exit 1'
  63.     tar vxf $(BACKUP) $(LIST)
  64.  
  65. config.data:        config.dist
  66.     $(IFTRUE) '-f config.new' 'echo config.new exists! ; exit 1'
  67.     $(IFTRUE) '-f config.old' 'echo config.old exists! ; exit 1'
  68.     $(IFTRUE) '! -f config.data' '$(MAKE) CLOBBER=YES SCRATCH'
  69.     cat config.data config.dist >subst.tmp
  70.     cp config.dist config.new
  71.     ./subst $(SED) -f subst.tmp config.new
  72.     -@rm -f subst.tmp
  73.     @echo "Update config.old from config.new!"
  74.     $(IFTRUE) '-f config.data' \
  75.      'echo "Renaming config file to config.old"; mv config.data config.old'
  76.     exit 1 ;
  77. SCRATCH:
  78.     $(IFTRUE) '-z $(CLOBBER)' 'echo No way! ; exit 1'
  79.     @echo 'You do not have a config.data file.'
  80.     @echo 'Setting one up using the default file.'
  81.     @echo 'You must edit this file, then remove config.new and config.old.'
  82.     @echo 'Then restart the make.'
  83.     cat config.dist >config.data
  84.  
  85. subst:        subst.c subst.sh
  86.     -$(MAKE) c || $(MAKE) sh || rm -f subst
  87.     $(IFTRUE) '! -f subst' 'echo Cannot make subst ; exit 1'
  88. c:
  89.     @rm -f subst
  90.     $(CC) -o subst subst.c
  91. sh:
  92.     @rm -f subst
  93.     cp subst.sh subst
  94.     chmod +x subst
  95.  
  96. sedtest:
  97.     @echo 'This line should not be touched' >sedtest
  98.     @echo '=()<Sed seems OK:  @<NEWSMASTER>@>()=' >>sedtest
  99.     @echo 'ERROR:  do not use the SED version of subst' >>sedtest
  100.     -$(SHELL) ./subst.sh $(SED) -f $(CONF) sedtest
  101.     -@grep ERROR: sedtest
  102.     $(IFTRUE) '! -s sedtest' 'echo Do not use sed ; rm sedtest ; exit 1'
  103.     -@grep OK: sedtest
  104.     rm -f sedtest
  105.  
  106.  
  107. .PRECIOUS:    $(CONF) files.list
  108.  
  109. ##  Dependencies.  Default list, below, is probably good enough.
  110. depend:        Makefile $(SOURCES)
  111.     makedepend $(DEFS) $(SOURCES)
  112.  
  113. # DO NOT DELETE THIS LINE -- make depend depends on it.
  114.